Data processors often have special modes of operation in order to gain access to special features that should not be accidentally enabled. An example of such a special mode is a "test mode". In a test mode, various test features can be enabled which may alter the normal function of various sections within the data processor. The altered functionality of the sections improves testability but often precludes normal processor operation. If a test mode is inadvertently enabled during normal operation, a catastrophic system failure may occur.
Several methods have been used to restrict access to special modes in a data processor. These include:
1) Enabling a special mode when a predetermined voltage is applied to a dedicated pin of an integrated circuit containing the data processor. PA1 2) Enabling a special mode when a multipurpose pin of an integrated circuit detects a voltage level outside a normally expected operating voltage range. A microprocessor labeled the "MC68000" sold by Motorola Inc. senses a higher than normal voltage signal on a pin to initiate certain test features. PA1 3) Enabling a special mode when a predetermined pin of an integrated circuit is asserted during the negation of a reset mode as performed by a data processor labeled the "MC68HC05" sold by Motorola Inc.. PA1 4) Enabling a special mode via a register bit which can only be written once after resetting the data processor. This enabling mechanism is performed by a data processor labeled the "MC68HC11" sold by Motorola Inc. and is described in U.S. Pat. No. 4,580,246 by James M. Sibigtroth and assigned to the assignee hereof. PA1 5) Enabling a special mode via a register bit which can only be negated once after resetting the data processor. This enabling mechanism is also performed by the MC68HC11 data processor. PA1 6) Enabling a special mode via a register bit which can only be written within a specified time period following resetting the data processor. This enabling mechanism is also performed by the MC68HC11 data processor.
In a data processing system, a user may also desire that special modes of a data processor be secure and yet software controllable. However, additional and unforeseen ways of accidentally entering a special mode may exist when software control exists.